package br.com.jmed.service;

import java.util.List;

import javax.ejb.Stateless;
import javax.inject.Inject;

import br.com.jmed.dao.MedicoDao;
import br.com.jmed.dao.Parametros;
import br.com.jmed.model.Medico;

@Stateless
public class MedicoService {

	@Inject
	private MedicoDao medicoDao;

	public List<Medico> findMedicoByNome(String nome) {
		Parametros<String> parametro = new Parametros<String>();
		parametro.setNome("nome");
		parametro.setValor("%" + nome + "%");
		return medicoDao.findToList("Medico.findByNome", parametro);
	}

	public Medico findMedicoByCod(Integer codigo) {
		return medicoDao.find(Medico.class, codigo);
	}

	public List<Medico> findAllMedicos() {
		return medicoDao.findToList("Medico.findAll", new Parametros[0]);
	}

	public Medico findMedicoByCode(Integer codigo) {
		return medicoDao.find(Medico.class, codigo);
	}

	public Medico salvarMedico(Medico medico) {
		medicoDao.save(medico);
		return medico;
	}

	public void deletarMedico(Medico medico) {
		medicoDao.merge(medico);
	}

	public void atualizarMedico(Medico medico) {
		medicoDao.merge(medico);
	}

	public MedicoDao getMedicoDao() {
		return medicoDao;
	}

	public void setMedicoDao(MedicoDao medicoDao) {
		this.medicoDao = medicoDao;
	}
}
